Micron Document
`:top
An `!adaptive algorithm`! is an `F33f`_`[algorithm`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Algorithm]`_`f that changes its behavior at the time it is run,`:cite-ref-zaknich2005-1-0[`F5bf`_`[1`#cite-note-zaknich2005-1]`_`f] based on information available and on `*a priori`* defined reward mechanism (or criterion). Such information could be the story of recently received data, information on the available computational resources, or other run-time acquired (or `*a priori`* known) information related to the environment in which it operates.

Among the most used adaptive algorithms is the `F33f`_`[Widrow-Hoff’s least mean squares (LMS)`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Least_mean_squares_filter]`_`f, which represents a class of stochastic gradient-descent algorithms used in adaptive filtering and machine learning. In adaptive filtering the LMS is used to mimic a desired filter by finding the filter coefficients that relate to producing the least mean square of the error signal (difference between the desired and the actual signal).

For example, stable partition, using no additional memory is `*O`*(`*n`* lg `*n`*) but given `*O`*(`*n`*) memory, it can be `*O`*(`*n`*) in time. As implemented by the `F33f`_`[C++ Standard Library`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=C++_Standard_Library]`_`f, `B100`F9d9stable_partition`f`b is adaptive and so it acquires as much memory as it can get (up to what it would need at most) and applies the algorithm using that available memory. Another example is `F33f`_`[adaptive sort`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Adaptive_sort]`_`f, whose behavior changes upon the presortedness of its input.

An example of an adaptive algorithm in `F33f`_`[radar`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Radar]`_`f systems is the `F33f`_`[constant false alarm rate`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Constant_false_alarm_rate]`_`f (CFAR) detector.

In `F33f`_`[machine learning`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Machine_learning]`_`f and `F33f`_`[optimization`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Optimization]`_`f, many algorithms are adaptive or have adaptive variants, which usually means that the algorithm parameters such as `F33f`_`[learning rate`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Learning_rate]`_`f are automatically adjusted according to statistics about the optimisation thus far (e.g. `F33f`_`[the rate of convergence`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Stochastic_gradient_descent]`_`f).`:cite-ref-2[`F5bf`_`[2`#cite-note-2]`_`f] Examples include `F33f`_`[adaptive simulated annealing`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Adaptive_simulated_annealing]`_`f, `F33f`_`[adaptive coordinate descent`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Adaptive_coordinate_descent]`_`f, `F33f`_`[adaptive quadrature`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Adaptive_quadrature]`_`f, `F33f`_`[AdaBoost`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=AdaBoost]`_`f, `F33f`_`[Adagrad`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Stochastic_gradient_descent]`_`f, Adadelta, `F33f`_`[RMSprop`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Stochastic_gradient_descent]`_`f, and `F33f`_`[Adam`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Stochastic_gradient_descent]`_`f.`:cite-ref-3[`F5bf`_`[3`#cite-note-3]`_`f]

In `F33f`_`[data compression`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Data_compression]`_`f, `F33f`_`[adaptive coding`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Adaptive_coding]`_`f algorithms such as `F33f`_`[Adaptive Huffman coding`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Adaptive_Huffman_coding]`_`f or `F33f`_`[Prediction by partial matching`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Prediction_by_partial_matching]`_`f can take a stream of data as input, and adapt their compression technique based on the symbols that they have already encountered.`:cite-ref-lidrew2014-4-0[`F5bf`_`[4`#cite-note-lidrew2014-4]`_`f]

In `F33f`_`[signal processing`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Signal_processing]`_`f, the `F33f`_`[Adaptive Transform Acoustic Coding`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Adaptive_Transform_Acoustic_Coding]`_`f (ATRAC) codec used in `F33f`_`[MiniDisc`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=MiniDisc]`_`f recorders is called "adaptive" because the window length (the size of an audio "chunk") can change according to the nature of the sound being compressed, to try to achieve the best-sounding compression strategy.

>>Contents

• `F0af`_`[See also`#see-also]`_`f
• `F0af`_`[References`#references]`_`f

-─

>>See also

• `F33f`_`[Adaptation (computer science)`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Adaptation_(computer_science)]`_`f
• `F33f`_`[Adaptive filter`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Adaptive_filter]`_`f
• `F33f`_`[Adaptive grammar`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Adaptive_grammar]`_`f
• `F33f`_`[Adaptive optimization`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Adaptive_optimization]`_`f

>>References

`:cite-note-zaknich2005-1`!1.`! `F0af`_`[↑`#cite-ref-zaknich2005-1-0]`_`f `:citerefanthony-zaknich2005`aAnthony Zaknich (25 April 2005). `*Principles of Adaptive Filters and Self-learning Systems`*. Springer Science & Business Media. `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 978-1-85233-984-5.
`:cite-note-2`!2.`! `F0af`_`[↑`#cite-ref-2]`_`f `:citerefgoodfellowbengiocourville2016`a`F33f`_`[Goodfellow, Ian`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Ian_Goodfellow]`_`f; `F33f`_`[Bengio, Yoshua`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Yoshua_Bengio]`_`f; Courville, Aaron (2016). `*Deep Learning`*. MIT Press. `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 978-0-26203561-3.
`:cite-note-3`!3.`! `F0af`_`[↑`#cite-ref-3]`_`f `:citerefmurphy2021`aMurphy, Kevin (2021). `*Probabilistic Machine Learning: An Introduction`*. MIT Press. Retrieved 10 April 2021. `B100`F9d9{{cite book}}`f`b: `B100`F9d9|website=`f`b ignored (help)
`:cite-note-lidrew2014-4`!4.`! `F0af`_`[↑`#cite-ref-lidrew2014-4-0]`_`f `:citerefze-nian-limark-s-drewjiangchuan-liu2014`aZe-Nian Li; Mark S. Drew; Jiangchuan Liu (9 April 2014). `*Fundamentals of Multimedia`*. Springer Science & Business Media. `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 978-3-319-05290-8.

`c`F0af`_`[↑ Back to top`#top]`_`f`a